﻿using Estsh.Core.Model.Extend.IFModels;
using Estsh.Core.Model.Result;
using Estsh.Core.Models;
using Estsh.Core.Repositories;

namespace Estsh.Core.Wms.IRepositories
{
    public interface IWMSInterfaceMasterRepository : IBaseRepository<SapPt>
    {
        public List<WmsCycrInterface> GetInventoryResultsInfo();
        public SapInterfaceResult InsertInventoryResultsInfo(List<WmsCycrInterface> wmsCycrs);
        public List<WmsInqcInterface> GetQualityInspectionResultsInfo();
        public SapInterfaceResult InsertQualityInspectionResultsInfo(List<WmsInqcInterface> wmsInqcs);

        public List<WmsRetrInterface> GetSupplierReturnResultInfo();
        public SapInterfaceResult InsertSupplierReturnResultInfo(List<WmsRetrInterface> wmsRetrs);
        public List<WmsMovrInterface> GetInventoryDumpResultInfo();
        public SapInterfaceResult InsertInventoryDumpResultInfo(List<WmsMovrInterface> wmsMovrs);
        public List<WmsJisInterface> GetSalesAndShippingResultsInfo();
        public SapInterfaceResult InsertSalesAndShippingResultsInfo(List<WmsJisInterface> wmsJisInterfaces);
        public List<WmsNjsiInterface> GetSalesAndDeliveryPlansInfo();
        public SapInterfaceResult InsertSalesAndDeliveryPlanInfo(List<WmsNjsiInterface> wmsNjsis);
        public List<MesMovtrnInterface> GetProductionReportInfo();
        public SapInterfaceResult InsertProductionReportInfo(List<MesMovtrnInterface> mesMovtrns);
        public List<WmsToqc> getQualityTOQCNoticeResultsInfo();
        public SapInterfaceResult InsertQualityToQcNoticeResultsInfo(List<WmsToqc> wmsInqcs);
    }
}
